package negocios.cinemaBeans;

import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

public class Usuario implements Serializable{

	private String nomeUsuario;
	private String senha;
	private String tipoUsuario;
	
	public Usuario(String nomeUsuario, String senha, String tipoUsuario){
		this.setNomeUsuario(nomeUsuario);
		this.setSenha(senha);
		this.setTipoUsuario(tipoUsuario);
	}
	
	public String getNomeUsuario() {
		return nomeUsuario;
	}
	public void setNomeUsuario(String nomeUsuario) {
		this.nomeUsuario = nomeUsuario;
	}
	public String getSenha() {
		return senha;
	}
	public void setSenha(String senha){
		senha = this.criptSenha(senha);
		this.senha = senha;
	}
	public String getTipoUsuario() {
		return tipoUsuario;
	}
	public void setTipoUsuario(String tipoUsuario) {
		this.tipoUsuario = tipoUsuario;
	}
	
	protected String criptSenha(String valor){
		String senha;
		MessageDigest algoritmo;
		byte messageDigest[] = null;
				
		try {
			algoritmo = MessageDigest.getInstance("MD5");
			 messageDigest = algoritmo.digest(valor.getBytes("UTF-8"));
		} catch (NoSuchAlgorithmException e) {
			e.printStackTrace();
		} catch (UnsupportedEncodingException e) {
			e.printStackTrace();
		}
		
		StringBuilder hexString = new StringBuilder();
		for(byte b: messageDigest){
			hexString.append(String.format("%02X", 0xFF & b));
		}
		senha = hexString.toString();
		
		return senha;
	}
}
